package com.coderman.infosys.auth.app.convert;

import java.util.List;

import com.coderman.infosys.auth.api.dto.system.MenuDTO;
import com.coderman.infosys.auth.api.dto.system.request.CreateMenuRequestDTO;
import com.coderman.infosys.auth.api.dto.system.request.UpdateMenuRequestDTO;
import com.coderman.infosys.auth.domain.bo.system.MenuBO;

import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.Mappings;
import org.mapstruct.factory.Mappers;

/**
* @Description:MenuConvert接口
* @Author:
* @CreateTime:2022-01-02 15:27:39
* @version v1.0
*/
@Mapper
public interface MenuConvert{
	MenuConvert INSTANCE = Mappers.getMapper(MenuConvert.class);

	/**
	 *
	 * @Description:
	 * @return List<MenuDTO>
	 */
	 List<MenuDTO> menuBOs2dtoList(List<MenuBO> menuBOList);
	/**
	 *
	 * @Description:
	 * @return MenuBO
	 */
	 MenuBO dto2bo(UpdateMenuRequestDTO updateMenuRequestDTO);
	/**
	 *
	 * @Description:
	 * @return List<MenuBO>
	 */
	 List<MenuBO> updateMenuRequestDTOs2boList(List<UpdateMenuRequestDTO> updateMenuRequestDTOList);
	/**
	 *
	 * @Description:
	 * @return MenuBO
	 */
	 MenuBO dto2bo(MenuDTO menuDTO);
	/**
	 *
	 * @Description:
	 * @return MenuDTO
	 */
	 MenuDTO bo2dto(MenuBO menuBO);
	/**
	 *
	 * @Description:
	 * @return MenuBO
	 */
	 MenuBO dto2bo(CreateMenuRequestDTO createMenuRequestDTO);
	/**
	 *
	 * @Description:
	 * @return List<MenuBO>
	 */
	 List<MenuBO> menuDTOs2boList(List<MenuDTO> menuDTOList);
	/**
	 *
	 * @Description:
	 * @return List<MenuBO>
	 */
	 List<MenuBO> createMenuRequestDTOs2boList(List<CreateMenuRequestDTO> createMenuRequestDTOList);
}